home *** CD-ROM | disk | FTP | other *** search
/ Network Supervisor's Toolkit / Network Supervisor's Toolkit.iso / communic / bcomx / bcomx.doc next >
Text File  |  1996-07-10  |  11KB  |  266 lines

  1. to get this listing just link bcomx.obj (link.exe or nlink.exe)
  2. and load it in debug.exe.
  3. you have to patch some fixups as well, but you can use the same
  4. patches for acomx, ccomx and dcomx:
  5.  
  6. ; original:
  7. *
  8. * 1BA4:07EA 8A05          MOV     AL,[DI]                       ;get current char
  9. * 1BA4:07EC 3C31          CMP     AL,'1'                        ;is it ascii '1' ?
  10. * 1BA4:07EE 750C          JNZ     07FC                          ;no
  11. * 1BA4:07F0 C685CD0401    MOV     BYTE PTR [DI+04CD],01         ;set a hex 1 to return code hex                     5 Bytes
  12. * 1BA4:07F5 C7852D071108  MOV     WORD PTR [DI+JPtr_072D],0811  ;setup to check for following number
  13. * 1BA4:07FB C3            RET
  14. *
  15. * 1BA4:07FC 3C30          CMP     AL,'0'
  16. * 1BA4:07FE 7239          JB      0839
  17. * 1BA4:0800 3C39          CMP     AL,'9'                                                                        2 Bytes
  18. * 1BA4:0802 7735          JA      0839
  19. * 1BA4:0804 2C30          SUB     AL,'0'
  20. * 1BA4:0806 8885CD04      MOV     [DI+04CD],AL
  21. * 1BA4:080A C7852D072A08  MOV     WORD PTR [DI+JPtr_072D],082A
  22. * 1BA4:0810 C3            RET
  23. *
  24. * 1BA4:0811 803D0D        CMP     BYTE PTR [DI],0D              ;carriage return following the ascii '1' ?
  25. * 1BA4:0814 7503          JNZ     0819                          ;no
  26. * 1BA4:0816 E9F704        JMP     0D10                          ;result code is decoded
  27. *
  28. * 1BA4:0819 803D30        CMP     BYTE PTR [DI],'0'             ;is it ascii '0' ?
  29. * 1BA4:081C 75BF          JNZ     07DD                          ;no, continue checking   !!!!!!!!!!!
  30. *
  31. * 1BA4:081E C685CD040A    MOV     BYTE PTR [DI+04CD],0A         ;return code 10
  32. * 1BA4:0823 C7852D072A08  MOV     WORD PTR [DI+JPtr_072D],082A  ;setup for check on carriage return
  33. * 1BA4:0829 C3            RET
  34. *
  35. * 1BA4:082A 803D0D        CMP     BYTE PTR [DI],0D              ;carriage return
  36. * 1BA4:082D 7503          JNZ     0832                          ;no, continue checking
  37. * 1BA4:082F E9DE04        JMP     0D10
  38. *
  39. * 1BA4:0832 C7852D07DD07  MOV     WORD PTR [DI+JPtr_072D],07DD
  40. * 1BA4:0838 C3            RET
  41. ;
  42. ; by these lines:
  43. ;
  44. ; ******** changed: ********
  45. ;
  46. ; 1BA4:07EA 8A05          MOV     AL,[DI]                        
  47. ; 1BA4:07EC 3C31          CMP     AL,'1'                         
  48. ; 1BA4:07EE 7507          JNZ     07F7                           
  49. ; 1BA4:07F0 C7852D070208  MOV     WORD PTR [DI+JPtr_072D],0802   
  50. ; 1BA4:07F6 C3            RET                                    
  51. ;                                                                
  52. ; 1BA4:07F7 3C35          CMP     AL,'5'                         
  53. ; 1BA4:07F9 753E          JNZ     0839                           
  54. ; 1BA4:07FB C685CD0405    MOV     [DI+04CD],05                         
  55. ; 1BA4:0800 EB21          JMP     0824                                
  56. ;                                                                      
  57. ; 1BA4:0802 803D30        CMP     BYTE PTR [DI],'0'                    
  58. ; 1BA4:0805 7507          JNZ     080E                                  
  59. ; 1BA4:0807 C685CD040A    MOV     BYTE PTR [DI+04CD],0A                 
  60. ; 1BA4:080C EB16          JMP     0824                                  
  61. ;                                                                       
  62. ; 1BA4:080E 803D33        CMP     BYTE PTR [DI],'3'                     
  63. ; 1BA4:0811 7507          JNZ     0819                                  
  64. ; 1BA4:0813 C685CD040D    MOV     BYTE PTR [DI+04CD],0D                 
  65. ; 1BA4:0818 EB0A          JMP     0824                                  
  66. ;
  67. ; 1BA4:081A 803D38        CMP     BYTE PTR [DI],'8'                   
  68. ; 1BA4:081D 75BE          JNZ     07DD                                
  69. ; 1BA4:081F C685CD0412    MOV     BYTE PTR [DI+04CD],12               
  70. ; 1BA4:0824 C7852D072B08  MOV     WORD PTR [DI+JPtr_072D],082B        
  71. ; 1BA4:082A C3            RET
  72. ;
  73. ; 1BA4:082B 803D0D        CMP     BYTE PTR [DI],0D              ;carriage return
  74. ; 1BA4:082E 7503          JNZ     0833                          ;no, continue checking
  75. ; 1BA4:0830 E9DE04        JMP     0D10
  76. ; 1BA4:0833 E9AE01        JMP     09E4
  77. ; 1BA4:0836 90            NOP
  78. ; 1BA4:0837 90            NOP
  79. ; 1BA4:0838 90            NOP
  80. ;
  81. ; ******** end of changes *********
  82. ;
  83. ; original:
  84. *
  85. * 1BA4:0D5C 8A85CD04      MOV     AL,[DI+04CD]
  86. * 1BA4:0D60 3C01          CMP     AL,01
  87. * 1BA4:0D62 7418          JZ      0D7C
  88. * 1BA4:0D64 3C05          CMP     AL,05
  89. * 1BA4:0D66 7424          JZ      0D8C
  90. * 1BA4:0D68 3C09          CMP     AL,09
  91. * 1BA4:0D6A 7418          JZ      0D84
  92. * 1BA4:0D6C 3C0A          CMP     AL,0A
  93. * 1BA4:0D6E 7424          JZ      0D94
  94. * 1BA4:0D70 C685D10400    MOV     BYTE PTR [DI+04D1],00
  95. * 1BA4:0D75 C7852D07DD07  MOV     WORD PTR [DI+JPtr_072D],07DD
  96. * 1BA4:0D7B C3            RET
  97. *
  98. * 1BA4:0D7C C6856B0700    MOV     BYTE PTR [DI+076B],00
  99. * 1BA4:0D81 EB16          JMP     0D99
  100. * 1BA4:0D83 90            NOP
  101. * 1BA4:0D84 C6856B0701    MOV     BYTE PTR [DI+076B],01
  102. * 1BA4:0D89 EB0E          JMP     0D99
  103. * 1BA4:0D8B 90            NOP
  104. * 1BA4:0D8C C6856B0702    MOV     BYTE PTR [DI+076B],02
  105. * 1BA4:0D91 EB06          JMP     0D99
  106. * 1BA4:0D93 90            NOP
  107. * 1BA4:0D94 C6856B0705    MOV     BYTE PTR [DI+076B],05
  108. * 1BA4:0D99 C685D10400    MOV     BYTE PTR [DI+04D1],00
  109. * 1BA4:0D9E 8A856B07      MOV     AL,[DI+076B]
  110. * 1BA4:0DA2 32E4          XOR     AH,AH
  111. * 1BA4:0DA4 8A1E1200      MOV     BL,[0012]
  112. * 1BA4:0DA8 32FF          XOR     BH,BH
  113. * 1BA4:0DAA 8BF3          MOV     SI,BX
  114. * 1BA4:0DAC 57            PUSH    DI
  115. * 1BA4:0DAD E8740A        CALL    1824
  116. * 1BA4:0DB0 5F            POP     DI
  117. * 1BA4:0DB1 C7852D07DD07  MOV     WORD PTR [DI+JPtr_072D],07DD
  118. * 1BA4:0DB7 C3            RET
  119. *
  120. ; ******** start of changes ********
  121. ;
  122. ; 1BA4:0D5C 8A85CD04      MOV     AL,[DI+04CD]
  123. ; 1BA4:0D60 3C05          CMP     AL,05
  124. ; 1BA4:0D62 7418          JZ      0D7C
  125. ; 1BA4:0D64 3C0A          CMP     AL,0A
  126. ; 1BA4:0D66 741B          JZ      0D83
  127. ; 1BA4:0D68 3C0D          CMP     AL,0D
  128. ; 1BA4:0D6A 741E          JZ      0D8A
  129. ; 1BA4:0D6C 3C12          CMP     AL,12
  130. ; 1BA4:0D6E 7421          JZ      0D91
  131. ; 1BA4:0D70 C685D10400    MOV     BYTE PTR [DI+04D1],00
  132. ; 1BA4:0D75 C7852D07DD07  MOV     WORD PTR [DI+JPtr_072D],07DD
  133. ; 1BA4:0D7B C3            RET
  134. ;
  135. ; 1BA4:0D7C C6856B0702    MOV     BYTE PTR [DI+076B],02
  136. ; 1BA4:0D81 EB14          JMP     0D96
  137. ;
  138. ; 1BA4:0D83 C6856B0705    MOV     BYTE PTR [DI+076B],05
  139. ; 1BA4:0D88 EB0C          JMP     0D96
  140. ;
  141. ; 1BA4:0D8A C6856B0709    MOV     BYTE PTR [DI+076B],09
  142. ; 1BA4:0D8F EB05          JMP     0D96
  143. ;
  144. ; 1BA4:0D91 C6856B0707    MOV     BYTE PTR [DI+076B],07
  145. ; 1BA4:0D96 C685D10400    MOV     BYTE PTR [DI+04D1],00
  146. ; 1BA4:0D9B 8A856B07      MOV     AL,[DI+076B]
  147. ; 1BA4:0D9F 32E4          XOR     AH,AH
  148. ; 1BA4:0DA1 8A1E1200      MOV     BL,[0012]
  149. ; 1BA4:0DA5 32FF          XOR     BH,BH
  150. ; 1BA4:0DA7 8BF3          MOV     SI,BX
  151. ; 1BA4:0DA9 57            PUSH    DI
  152. ; 1BA4:0DAA E8770A        CALL    1824
  153. ; 1BA4:0DAD 5F            POP     DI
  154. ; 1BA4:0DAE C7852D07DD07  MOV     WORD PTR [DI+JPtr_072D],07DD
  155. ; 1BA4:0DB4 C3            RET
  156. ; 1BA4:0DB5 90            NOP
  157. ; 1BA4:0DB6 90            NOP
  158. ; 1BA4:0DB7 90            NOP
  159. ;
  160. ; ******** end of changes ********
  161. ; original:
  162. ;
  163. * 1BA4:0E5B 3C30          CMP     AL,30
  164. * 1BA4:0E5D 72FB          JB      0E5A
  165. * 1BA4:0E5F 3C39          CMP     AL,39
  166. * 1BA4:0E61 77F7          JA      0E5A
  167. * 1BA4:0E63 3C30          CMP     AL,30
  168. * 1BA4:0E65 74F3          JZ      0E5A
  169. * 1BA4:0E67 3C31          CMP     AL,31
  170. * 1BA4:0E69 741A          JZ      0E85
  171. * 1BA4:0E6B 3C32          CMP     AL,32
  172. * 1BA4:0E6D 74EB          JZ      0E5A
  173. * 1BA4:0E6F 2C30          SUB     AL,30
  174. * 1BA4:0E71 3C05          CMP     AL,05
  175. * 1BA4:0E73 743E          JZ      0EB3
  176. * 1BA4:0E75 3C09          CMP     AL,09
  177. * 1BA4:0E77 7432          JZ      0EAB
  178. * 1BA4:0E79 C685D004FF    MOV     BYTE PTR [DI+04D0],FF
  179. * 1BA4:0E7E C7852D07C70E  MOV     WORD PTR [DI+JPtr_072D],0EC7
  180. * 1BA4:0E84 C3            RET
  181. *
  182. * 1BA4:0E85 C7852D078C0E  MOV     WORD PTR [DI+JPtr_072D],0E8C
  183. * 1BA4:0E8B C3            RET
  184. *
  185. * 1BA4:0E8C E850F5        CALL    03DF
  186. * 1BA4:0E8F 74C9          JZ      0E5A
  187. * 1BA4:0E91 3C0D          CMP     AL,0D
  188. * 1BA4:0E93 7508          JNZ     0E9D
  189. * 1BA4:0E95 C6856B0700    MOV     BYTE PTR [DI+076B],00
  190. * 1BA4:0E9A EB46          JMP     0EE2
  191. * 1BA4:0E9C 90            NOP
  192. * 1BA4:0E9D 3C30          CMP     AL,30
  193. * 1BA4:0E9F 741A          JZ      0EBB
  194. * 1BA4:0EA1 EBB7          JMP     0E5A
  195. * 1BA4:0EA3 C6856B0700    MOV     BYTE PTR [DI+076B],00
  196. * 1BA4:0EA8 EB16          JMP     0EC0
  197. * 1BA4:0EAA 90            NOP
  198. * 1BA4:0EAB C6856B0701    MOV     BYTE PTR [DI+076B],01
  199. * 1BA4:0EB0 EB0E          JMP     0EC0
  200. * 1BA4:0EB2 90            NOP
  201. * 1BA4:0EB3 C6856B0702    MOV     BYTE PTR [DI+076B],02
  202. * 1BA4:0EB8 EB06          JMP     0EC0
  203. * 1BA4:0EBA 90            NOP
  204. * 1BA4:0EBB C6856B0705    MOV     BYTE PTR [DI+076B],05
  205. * 1BA4:0EC0 C7852D07C70E  MOV     WORD PTR [DI+JPtr_072D],0EC7
  206. * 1BA4:0EC6 C3            RET
  207. *
  208. ; with these changed lines:
  209. ;
  210. ; ******** start of changes ********
  211. ;
  212. ; 1BA4:0E5B 3C31          CMP     AL,31
  213. ; 1BA4:0E5D 7418          JZ      0E77
  214. ; 1BA4:0E5F 3C33          CMP     AL,33
  215. ; 1BA4:0E61 72F7          JB      0E5A
  216. ; 1BA4:0E63 3C39          CMP     AL,39
  217. ; 1BA4:0E65 77F3          JA      0E5A
  218. ; 1BA4:0E67 3C35          CMP     AL,35
  219. ; 1BA4:0E69 7431          JZ      0E9C
  220. ; 1BA4:0E6B C685D004FF    MOV     BYTE PTR [DI+04D0],FF
  221. ; 1BA4:0E70 C7852D07C70E  MOV     WORD PTR [DI+JPtr_072D],0EC7
  222. ; 1BA4:0E76 C3            RET
  223. ;
  224. ; 1BA4:0E77 C7852D077E0E  MOV     WORD PTR [DI+JPtr_072D],0E7E
  225. ; 1BA4:0E7D C3            RET
  226. ;
  227. ; 1BA4:0E7E E85EF5        CALL    03DF
  228. ; 1BA4:0E81 74D7          JZ      0E5A
  229. ; 1BA4:0E83 3C0D          CMP     AL,0D
  230. ; 1BA4:0E85 7507          JNZ     0E8E
  231. ; 1BA4:0E87 C6856B0700    MOV     BYTE PTR [DI+076B],00
  232. ; 1BA4:0E8C EB545         JMP     0EE2
  233. ;
  234. ; 1BA4:0E8E 3C30          CMP     AL,30
  235. ; 1BA4:0E90 7411          JZ      0EA3
  236. ; 1BA4:0E92 3C33          CMP     AL,33
  237. ; 1BA4:0E94 7414          JZ      0EAA
  238. ; 1BA4:0E96 3C38          CMP     AL,38
  239. ; 1BA4:0E98 741D          JZ      0EB7
  240. ; 1BA4:0E9A EBBE          JMP     0E5A
  241. ;
  242. ; 1BA4:0E9C C6856B0702    MOV     BYTE PTR [DI+076B],02
  243. ; 1BA4:0EA1 EB13          JMP     0EB6
  244. ;
  245. ; 1BA4:0EA3 C6856B0705    MOV     BYTE PTR [DI+076B],05
  246. ; 1BA4:0EA8 EB0C          JMP     0EB6
  247. ;
  248. ; 1BA4:0EAA C6856B0709    MOV     BYTE PTR [DI+076B],09
  249. ; 1BA4:0EAF EB05          JMP     0EB6
  250. ;
  251. ; 1BA4:0EB1 C6856B0707    MOV     BYTE PTR [DI+076B],07
  252. ; 1BA4:0EB6 C7852D07C70E  MOV     WORD PTR [DI+JPtr_072D],0EC7
  253. ; 1BA4:0EBC C3            RET
  254. ; 1BA4:0EBD 90            NOP
  255. ; 1BA4:0EBE 90            NOP
  256. ; 1BA4:0EBF 90            NOP
  257. ; 1BA4:0EC0 90            NOP
  258. ; 1BA4:0EC1 90            NOP
  259. ; 1BA4:0EC2 90            NOP
  260. ; 1BA4:0EC3 90            NOP
  261. ; 1BA4:0EC4 90            NOP
  262. ; 1BA4:0EC5 90            NOP
  263. ; 1BA4:0EC6 90            NOP
  264. ;
  265. ; ******** end of changes ********
  266.